﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Text;
using CTTest.Essential;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using CTTest.Essential.Soap.BMS;

namespace CTTest
{
    /// <summary>
    /// 9.2	CMS与手机业务管理平台接口
    /// 天翼视讯CMS <--> 天翼视讯业务管理模块
    /// a）内容管理请求（ContentMNGRequest）
    /// b）内容管理响应（ContentMNGRequestResponse）
    /// c）获取内容文件描述XML
    /// d）结果通告请求（ContentMNGNotify）
    /// e）结果通告响应（ContentMNGNotifyResponse）
    /// </summary>
    public partial class CTTestMain
    {
        [TestMethod]
        [Description("内容管理--正常场景流程测试")]
        public void 内容管理の正常场景流程()
        {
            WriteLogger("Entering test method {0}", MethodBase.GetCurrentMethod().Name);

            const string COPID = "1000";
            const string SOPID = "500";
            const string CorrelateID = "2000";
            const string ContentMNGURL = "ftp://1.2.3.4/stv/test.xml";

            dynamic result;

            //内容管理请求
            bool flag = OssUtil.TestContentMNGRequest(COPID, SOPID, CorrelateID, ContentMNGURL, WriteLogger, out result);
            Assert.IsTrue(flag, "内容管理请求失败");

            //结果通告请求
            flag = CtcUtil.TestNotify(new ContentMNGNotify1
            {
                COPID = COPID,
                SOPID = SOPID,
                CorrelateID = CorrelateID,
                RequestResult = result.resultCode.ToString(),
                ResultDescription = result.errorDescription,
            }, WriteLogger);
            Assert.IsTrue(flag, "结果通告请求失败");

            WriteLogger("Leaving test method {0}", MethodBase.GetCurrentMethod().Name);
        }
    }
}
